package db.domain;

import sf.core.DBField;
import sf.tools.reflectasm.MethodAccess;

import java.util.Date;
import java.util.Map;

public class CommentMethodAccess extends MethodAccess {
    public Object invoke(final Object o, final int n, final Object... array) {
        final Comment comment = (Comment) o;
        switch (n) {
            case 0: {
                return comment.getId();
            }
            case 1: {
                return comment.getType();
            }
            case 2: {
                comment.setText((String) array[0]);
                return null;
            }
            case 3: {
                comment.setCreated((Date) array[0]);
                return null;
            }
            case 4: {
                return comment.getText();
            }
            case 5: {
                comment.setId((Long) array[0]);
                return null;
            }
            case 6: {
                return comment.getEmail();
            }
            case 7: {
                comment.setEmail((String) array[0]);
                return null;
            }
            case 8: {
                return comment.getIp();
            }
            case 9: {
                comment.setIp((String) array[0]);
                return null;
            }
            case 10: {
                comment.setType((String) array[0]);
                return null;
            }
            case 11: {
                return comment.getStatus();
            }
            case 12: {
                comment.setStatus((String) array[0]);
                return null;
            }
            case 13: {
                return comment.getParentId();
            }
            case 14: {
                comment.setParentId((Long) array[0]);
                return null;
            }
            case 15: {
                return comment.getUserId();
            }
            case 16: {
                comment.setUserId((Long) array[0]);
                return null;
            }
            case 17: {
                return comment.getCreated();
            }
            case 18: {
                comment.setFlag((String) array[0]);
                return null;
            }
            case 19: {
                return comment.getFlag();
            }
            case 20: {
                return comment.getContentId();
            }
            case 21: {
                comment.setContentId((Long) array[0]);
                return null;
            }
            case 22: {
                return comment.getContentModule();
            }
            case 23: {
                comment.setContentModule((String) array[0]);
                return null;
            }
            case 24: {
                return comment.getCommentCount();
            }
            case 25: {
                comment.setCommentCount((Long) array[0]);
                return null;
            }
            case 26: {
                return comment.getOrderNumber();
            }
            case 27: {
                comment.setOrderNumber((Long) array[0]);
                return null;
            }
            case 28: {
                return comment.getAuthor();
            }
            case 29: {
                comment.setAuthor((String) array[0]);
                return null;
            }
            case 30: {
                return comment.getVoteUp();
            }
            case 31: {
                comment.setVoteUp((Long) array[0]);
                return null;
            }
            case 32: {
                return comment.getVoteDown();
            }
            case 33: {
                comment.setVoteDown((Long) array[0]);
                return null;
            }
            case 34: {
                return comment.getAgent();
            }
            case 35: {
                comment.setAgent((String) array[0]);
                return null;
            }
            case 36: {
                return comment.getSlug();
            }
            case 37: {
                comment.setSlug((String) array[0]);
                return null;
            }
            case 38: {
                return comment.getLat();
            }
            case 39: {
                comment.setLat((Double) array[0]);
                return null;
            }
            case 40: {
                return comment.getLng();
            }
            case 41: {
                comment.setLng((Double) array[0]);
                return null;
            }
            case 42: {
                return comment.push((int) array[0], (Object) array[1]);
            }
            case 43: {
                return comment.push((String) array[0], (Object) array[1]);
            }
            case 44: {
//                comment.close();
                return null;
            }
            case 45: {
//                return comment.calculateHashCode();
            }
            case 46: {
                comment.clearQuery();
                return null;
            }
            case 47: {
                comment.clearUpdate();
                return null;
            }
            case 48: {
                comment.prepareUpdate((DBField) array[0], (Object) array[1]);
                return null;
            }
            case 49: {
                return comment.useQuery();
            }
            case 50: {
                return comment.hasQuery();
            }
            case 51: {
                return comment.hasUsed((DBField) array[0]);
            }
            case 52: {
                return comment.rowid();
            }
            case 53: {
//                return comment.isEquals((Object)array[0]);
            }
            case 54: {
                return comment.getTail();
            }
            case 55: {
                comment.setTail((Map) array[0]);
                return null;
            }
            case 56: {
                return comment.pull((int) array[0]);
            }
            case 57: {
                return comment.pull((String) array[0]);
            }
            case 58: {
//                comment.beforeGet((String)array[0]);
                return null;
            }
            case 59: {
                return comment.updateValueMap();
            }
            case 60: {
                comment.startUpdate();
                return null;
            }
            case 61: {
                comment.stopUpdate();
                return null;
            }
            case 62: {
//                comment.markUpdateFlag((DBField)array[0], (Object)array[1]);
                return null;
            }
            case 63: {
                comment.applyUpdate();
                return null;
            }
            case 64: {
                return comment.needUpdate();
            }
            case 65: {
                comment.bindRowid((String) array[0]);
                return null;
            }
            case 66: {
//                comment.beforeSet((String)array[0]);
                return null;
            }
            case 67: {
                comment.touchUsedFlag((DBField) array[0], (boolean) array[1]);
                return null;
            }
            case 68: {
                return comment.fieldIndex((String) array[0]);
            }
            default: {
                throw new IllegalArgumentException("Method not found: " + n);
            }
        }
    }
}
